{"ast":null,"code":"import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nvar _ClearIcon, _ArrowDropDownIcon;\nconst _excluded = [\"autoComplete\", \"autoHighlight\", \"autoSelect\", \"blurOnSelect\", \"ChipProps\", \"className\", \"clearIcon\", \"clearOnBlur\", \"clearOnEscape\", \"clearText\", \"closeText\", \"componentsProps\", \"defaultValue\", \"disableClearable\", \"disableCloseOnSelect\", \"disabled\", \"disabledItemsFocusable\", \"disableListWrap\", \"disablePortal\", \"filterOptions\", \"filterSelectedOptions\", \"forcePopupIcon\", \"freeSolo\", \"fullWidth\", \"getLimitTagsText\", \"getOptionDisabled\", \"getOptionLabel\", \"isOptionEqualToValue\", \"groupBy\", \"handleHomeEndKeys\", \"id\", \"includeInputInList\", \"inputValue\", \"limitTags\", \"ListboxComponent\", \"ListboxProps\", \"loading\", \"loadingText\", \"multiple\", \"noOptionsText\", \"onChange\", \"onClose\", \"onHighlightChange\", \"onInputChange\", \"onOpen\", \"open\", \"openOnFocus\", \"openText\", \"options\", \"PaperComponent\", \"PopperComponent\", \"popupIcon\", \"readOnly\", \"renderGroup\", \"renderInput\", \"renderOption\", \"renderTags\", \"selectOnFocus\", \"size\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes, integerPropType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses, useAutocomplete, createFilterOptions } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Popper from '../Popper';\nimport ListSubheader from '../ListSubheader';\nimport Paper from '../Paper';\nimport IconButton from '../IconButton';\nimport Chip from '../Chip';\nimport inputClasses from '../Input/inputClasses';\nimport inputBaseClasses from '../InputBase/inputBaseClasses';\nimport outlinedInputClasses from '../OutlinedInput/outlinedInputClasses';\nimport filledInputClasses from '../FilledInput/filledInputClasses';\nimport ClearIcon from '../internal/svg-icons/Close';\nimport ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses';\nimport capitalize from '../utils/capitalize';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n  const {\n    classes,\n    disablePortal,\n    focused,\n    fullWidth,\n    hasClearIcon,\n    hasPopupIcon,\n    inputFocused,\n    popupOpen,\n    size\n  } = ownerState;\n  const slots = {\n    root: ['root', focused && 'focused', fullWidth && 'fullWidth', hasClearIcon && 'hasClearIcon', hasPopupIcon && 'hasPopupIcon'],\n    inputRoot: ['inputRoot'],\n    input: ['input', inputFocused && 'inputFocused'],\n    tag: ['tag', `tagSize${capitalize(size)}`],\n    endAdornment: ['endAdornment'],\n    clearIndicator: ['clearIndicator'],\n    popupIndicator: ['popupIndicator', popupOpen && 'popupIndicatorOpen'],\n    popper: ['popper', disablePortal && 'popperDisablePortal'],\n    paper: ['paper'],\n    listbox: ['listbox'],\n    loading: ['loading'],\n    noOptions: ['noOptions'],\n    option: ['option'],\n    groupLabel: ['groupLabel'],\n    groupUl: ['groupUl']\n  };\n  return composeClasses(slots, getAutocompleteUtilityClass, classes);\n};\nconst AutocompleteRoot = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Root',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    const {\n      fullWidth,\n      hasClearIcon,\n      hasPopupIcon,\n      inputFocused,\n      size\n    } = ownerState;\n    return [{\n      [`& .${autocompleteClasses.tag}`]: styles.tag\n    }, {\n      [`& .${autocompleteClasses.tag}`]: styles[`tagSize${capitalize(size)}`]\n    }, {\n      [`& .${autocompleteClasses.inputRoot}`]: styles.inputRoot\n    }, {\n      [`& .${autocompleteClasses.input}`]: styles.input\n    }, {\n      [`& .${autocompleteClasses.input}`]: inputFocused && styles.inputFocused\n    }, styles.root, fullWidth && styles.fullWidth, hasPopupIcon && styles.hasPopupIcon, hasClearIcon && styles.hasClearIcon];\n  }\n})(_ref => {\n  let {\n    ownerState\n  } = _ref;\n  return _extends({\n    [`&.${autocompleteClasses.focused} .${autocompleteClasses.clearIndicator}`]: {\n      visibility: 'visible'\n    },\n    /* Avoid double tap issue on iOS */\n    '@media (pointer: fine)': {\n      [`&:hover .${autocompleteClasses.clearIndicator}`]: {\n        visibility: 'visible'\n      }\n    }\n  }, ownerState.fullWidth && {\n    width: '100%'\n  }, {\n    [`& .${autocompleteClasses.tag}`]: _extends({\n      margin: 3,\n      maxWidth: 'calc(100% - 6px)'\n    }, ownerState.size === 'small' && {\n      margin: 2,\n      maxWidth: 'calc(100% - 4px)'\n    }),\n    [`& .${autocompleteClasses.inputRoot}`]: {\n      flexWrap: 'wrap',\n      [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 26 + 4\n      },\n      [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 52 + 4\n      },\n      [`& .${autocompleteClasses.input}`]: {\n        width: 0,\n        minWidth: 30\n      }\n    },\n    [`& .${inputClasses.root}`]: {\n      paddingBottom: 1,\n      '& .MuiInput-input': {\n        padding: '4px 4px 4px 0px'\n      }\n    },\n    [`& .${inputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n      [`& .${inputClasses.input}`]: {\n        padding: '2px 4px 3px 0'\n      }\n    },\n    [`& .${outlinedInputClasses.root}`]: {\n      padding: 9,\n      [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 26 + 4 + 9\n      },\n      [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 52 + 4 + 9\n      },\n      [`& .${autocompleteClasses.input}`]: {\n        padding: '7.5px 4px 7.5px 6px'\n      },\n      [`& .${autocompleteClasses.endAdornment}`]: {\n        right: 9\n      }\n    },\n    [`& .${outlinedInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n      // Don't specify paddingRight, as it overrides the default value set when there is only\n      // one of the popup or clear icon as the specificity is equal so the latter one wins\n      paddingTop: 6,\n      paddingBottom: 6,\n      paddingLeft: 6,\n      [`& .${autocompleteClasses.input}`]: {\n        padding: '2.5px 4px 2.5px 6px'\n      }\n    },\n    [`& .${filledInputClasses.root}`]: {\n      paddingTop: 19,\n      paddingLeft: 8,\n      [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 26 + 4 + 9\n      },\n      [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n        paddingRight: 52 + 4 + 9\n      },\n      [`& .${filledInputClasses.input}`]: {\n        padding: '7px 4px'\n      },\n      [`& .${autocompleteClasses.endAdornment}`]: {\n        right: 9\n      }\n    },\n    [`& .${filledInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n      paddingBottom: 1,\n      [`& .${filledInputClasses.input}`]: {\n        padding: '2.5px 4px'\n      }\n    },\n    [`& .${inputBaseClasses.hiddenLabel}`]: {\n      paddingTop: 8\n    },\n    [`& .${autocompleteClasses.input}`]: _extends({\n      flexGrow: 1,\n      textOverflow: 'ellipsis',\n      opacity: 0\n    }, ownerState.inputFocused && {\n      opacity: 1\n    })\n  });\n});\nconst AutocompleteEndAdornment = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'EndAdornment',\n  overridesResolver: (props, styles) => styles.endAdornment\n})({\n  // We use a position absolute to support wrapping tags.\n  position: 'absolute',\n  right: 0,\n  top: 'calc(50% - 14px)' // Center vertically\n});\n\nconst AutocompleteClearIndicator = styled(IconButton, {\n  name: 'MuiAutocomplete',\n  slot: 'ClearIndicator',\n  overridesResolver: (props, styles) => styles.clearIndicator\n})({\n  marginRight: -2,\n  padding: 4,\n  visibility: 'hidden'\n});\nconst AutocompletePopupIndicator = styled(IconButton, {\n  name: 'MuiAutocomplete',\n  slot: 'PopupIndicator',\n  overridesResolver: (_ref2, styles) => {\n    let {\n      ownerState\n    } = _ref2;\n    return _extends({}, styles.popupIndicator, ownerState.popupOpen && styles.popupIndicatorOpen);\n  }\n})(_ref3 => {\n  let {\n    ownerState\n  } = _ref3;\n  return _extends({\n    padding: 2,\n    marginRight: -2\n  }, ownerState.popupOpen && {\n    transform: 'rotate(180deg)'\n  });\n});\nconst AutocompletePopper = styled(Popper, {\n  name: 'MuiAutocomplete',\n  slot: 'Popper',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    return [{\n      [`& .${autocompleteClasses.option}`]: styles.option\n    }, styles.popper, ownerState.disablePortal && styles.popperDisablePortal];\n  }\n})(_ref4 => {\n  let {\n    theme,\n    ownerState\n  } = _ref4;\n  return _extends({\n    zIndex: (theme.vars || theme).zIndex.modal\n  }, ownerState.disablePortal && {\n    position: 'absolute'\n  });\n});\nconst AutocompletePaper = styled(Paper, {\n  name: 'MuiAutocomplete',\n  slot: 'Paper',\n  overridesResolver: (props, styles) => styles.paper\n})(_ref5 => {\n  let {\n    theme\n  } = _ref5;\n  return _extends({}, theme.typography.body1, {\n    overflow: 'auto'\n  });\n});\nconst AutocompleteLoading = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Loading',\n  overridesResolver: (props, styles) => styles.loading\n})(_ref6 => {\n  let {\n    theme\n  } = _ref6;\n  return {\n    color: (theme.vars || theme).palette.text.secondary,\n    padding: '14px 16px'\n  };\n});\nconst AutocompleteNoOptions = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'NoOptions',\n  overridesResolver: (props, styles) => styles.noOptions\n})(_ref7 => {\n  let {\n    theme\n  } = _ref7;\n  return {\n    color: (theme.vars || theme).palette.text.secondary,\n    padding: '14px 16px'\n  };\n});\nconst AutocompleteListbox = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Listbox',\n  overridesResolver: (props, styles) => styles.listbox\n})(_ref8 => {\n  let {\n    theme\n  } = _ref8;\n  return {\n    listStyle: 'none',\n    margin: 0,\n    padding: '8px 0',\n    maxHeight: '40vh',\n    overflow: 'auto',\n    [`& .${autocompleteClasses.option}`]: {\n      minHeight: 48,\n      display: 'flex',\n      overflow: 'hidden',\n      justifyContent: 'flex-start',\n      alignItems: 'center',\n      cursor: 'pointer',\n      paddingTop: 6,\n      boxSizing: 'border-box',\n      outline: '0',\n      WebkitTapHighlightColor: 'transparent',\n      paddingBottom: 6,\n      paddingLeft: 16,\n      paddingRight: 16,\n      [theme.breakpoints.up('sm')]: {\n        minHeight: 'auto'\n      },\n      [`&.${autocompleteClasses.focused}`]: {\n        backgroundColor: (theme.vars || theme).palette.action.hover,\n        // Reset on touch devices, it doesn't add specificity\n        '@media (hover: none)': {\n          backgroundColor: 'transparent'\n        }\n      },\n      '&[aria-disabled=\"true\"]': {\n        opacity: (theme.vars || theme).palette.action.disabledOpacity,\n        pointerEvents: 'none'\n      },\n      [`&.${autocompleteClasses.focusVisible}`]: {\n        backgroundColor: (theme.vars || theme).palette.action.focus\n      },\n      '&[aria-selected=\"true\"]': {\n        backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n        [`&.${autocompleteClasses.focused}`]: {\n          backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n          // Reset on touch devices, it doesn't add specificity\n          '@media (hover: none)': {\n            backgroundColor: (theme.vars || theme).palette.action.selected\n          }\n        },\n        [`&.${autocompleteClasses.focusVisible}`]: {\n          backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n        }\n      }\n    }\n  };\n});\nconst AutocompleteGroupLabel = styled(ListSubheader, {\n  name: 'MuiAutocomplete',\n  slot: 'GroupLabel',\n  overridesResolver: (props, styles) => styles.groupLabel\n})(_ref9 => {\n  let {\n    theme\n  } = _ref9;\n  return {\n    backgroundColor: (theme.vars || theme).palette.background.paper,\n    top: -8\n  };\n});\nconst AutocompleteGroupUl = styled('ul', {\n  name: 'MuiAutocomplete',\n  slot: 'GroupUl',\n  overridesResolver: (props, styles) => styles.groupUl\n})({\n  padding: 0,\n  [`& .${autocompleteClasses.option}`]: {\n    paddingLeft: 24\n  }\n});\nexport { createFilterOptions };\nconst Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps, ref) {\n  var _componentsProps$clea, _componentsProps$popu, _componentsProps$popp, _componentsProps$pape;\n  const props = useThemeProps({\n    props: inProps,\n    name: 'MuiAutocomplete'\n  });\n  /* eslint-disable @typescript-eslint/no-unused-vars */\n\n  const {\n      autoComplete = false,\n      autoHighlight = false,\n      autoSelect = false,\n      blurOnSelect = false,\n      ChipProps,\n      className,\n      clearIcon = _ClearIcon || (_ClearIcon = /*#__PURE__*/_jsx(ClearIcon, {\n        fontSize: \"small\"\n      })),\n      clearOnBlur = !props.freeSolo,\n      clearOnEscape = false,\n      clearText = 'Clear',\n      closeText = 'Close',\n      componentsProps = {},\n      defaultValue = props.multiple ? [] : null,\n      disableClearable = false,\n      disableCloseOnSelect = false,\n      disabled = false,\n      disabledItemsFocusable = false,\n      disableListWrap = false,\n      disablePortal = false,\n      filterSelectedOptions = false,\n      forcePopupIcon = 'auto',\n      freeSolo = false,\n      fullWidth = false,\n      getLimitTagsText = more => `+${more}`,\n      getOptionLabel = option => {\n        var _option$label;\n        return (_option$label = option.label) != null ? _option$label : option;\n      },\n      groupBy,\n      handleHomeEndKeys = !props.freeSolo,\n      includeInputInList = false,\n      limitTags = -1,\n      ListboxComponent = 'ul',\n      ListboxProps,\n      loading = false,\n      loadingText = 'Loading…',\n      multiple = false,\n      noOptionsText = 'No options',\n      openOnFocus = false,\n      openText = 'Open',\n      PaperComponent = Paper,\n      PopperComponent = Popper,\n      popupIcon = _ArrowDropDownIcon || (_ArrowDropDownIcon = /*#__PURE__*/_jsx(ArrowDropDownIcon, {})),\n      readOnly = false,\n      renderGroup: renderGroupProp,\n      renderInput,\n      renderOption: renderOptionProp,\n      renderTags,\n      selectOnFocus = !props.freeSolo,\n      size = 'medium'\n    } = props,\n    other = _objectWithoutPropertiesLoose(props, _excluded);\n  /* eslint-enable @typescript-eslint/no-unused-vars */\n\n  const {\n    getRootProps,\n    getInputProps,\n    getInputLabelProps,\n    getPopupIndicatorProps,\n    getClearProps,\n    getTagProps,\n    getListboxProps,\n    getOptionProps,\n    value,\n    dirty,\n    id,\n    popupOpen,\n    focused,\n    focusedTag,\n    anchorEl,\n    setAnchorEl,\n    inputValue,\n    groupedOptions\n  } = useAutocomplete(_extends({}, props, {\n    componentName: 'Autocomplete'\n  }));\n  const hasClearIcon = !disableClearable && !disabled && dirty && !readOnly;\n  const hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false; // If you modify this, make sure to keep the `AutocompleteOwnerState` type in sync.\n\n  const ownerState = _extends({}, props, {\n    disablePortal,\n    focused,\n    fullWidth,\n    hasClearIcon,\n    hasPopupIcon,\n    inputFocused: focusedTag === -1,\n    popupOpen,\n    size\n  });\n  const classes = useUtilityClasses(ownerState);\n  let startAdornment;\n  if (multiple && value.length > 0) {\n    const getCustomizedTagProps = params => _extends({\n      className: classes.tag,\n      disabled\n    }, getTagProps(params));\n    if (renderTags) {\n      startAdornment = renderTags(value, getCustomizedTagProps, ownerState);\n    } else {\n      startAdornment = value.map((option, index) => /*#__PURE__*/_jsx(Chip, _extends({\n        label: getOptionLabel(option),\n        size: size\n      }, getCustomizedTagProps({\n        index\n      }), ChipProps)));\n    }\n  }\n  if (limitTags > -1 && Array.isArray(startAdornment)) {\n    const more = startAdornment.length - limitTags;\n    if (!focused && more > 0) {\n      startAdornment = startAdornment.splice(0, limitTags);\n      startAdornment.push( /*#__PURE__*/_jsx(\"span\", {\n        className: classes.tag,\n        children: getLimitTagsText(more)\n      }, startAdornment.length));\n    }\n  }\n  const defaultRenderGroup = params => /*#__PURE__*/_jsxs(\"li\", {\n    children: [/*#__PURE__*/_jsx(AutocompleteGroupLabel, {\n      className: classes.groupLabel,\n      ownerState: ownerState,\n      component: \"div\",\n      children: params.group\n    }), /*#__PURE__*/_jsx(AutocompleteGroupUl, {\n      className: classes.groupUl,\n      ownerState: ownerState,\n      children: params.children\n    })]\n  }, params.key);\n  const renderGroup = renderGroupProp || defaultRenderGroup;\n  const defaultRenderOption = (props2, option) => /*#__PURE__*/_jsx(\"li\", _extends({}, props2, {\n    children: getOptionLabel(option)\n  }));\n  const renderOption = renderOptionProp || defaultRenderOption;\n  const renderListOption = (option, index) => {\n    const optionProps = getOptionProps({\n      option,\n      index\n    });\n    return renderOption(_extends({}, optionProps, {\n      className: classes.option\n    }), option, {\n      selected: optionProps['aria-selected'],\n      inputValue\n    });\n  };\n  return /*#__PURE__*/_jsxs(React.Fragment, {\n    children: [/*#__PURE__*/_jsx(AutocompleteRoot, _extends({\n      ref: ref,\n      className: clsx(classes.root, className),\n      ownerState: ownerState\n    }, getRootProps(other), {\n      children: renderInput({\n        id,\n        disabled,\n        fullWidth: true,\n        size: size === 'small' ? 'small' : undefined,\n        InputLabelProps: getInputLabelProps(),\n        InputProps: _extends({\n          ref: setAnchorEl,\n          className: classes.inputRoot,\n          startAdornment\n        }, (hasClearIcon || hasPopupIcon) && {\n          endAdornment: /*#__PURE__*/_jsxs(AutocompleteEndAdornment, {\n            className: classes.endAdornment,\n            ownerState: ownerState,\n            children: [hasClearIcon ? /*#__PURE__*/_jsx(AutocompleteClearIndicator, _extends({}, getClearProps(), {\n              \"aria-label\": clearText,\n              title: clearText,\n              ownerState: ownerState\n            }, componentsProps.clearIndicator, {\n              className: clsx(classes.clearIndicator, (_componentsProps$clea = componentsProps.clearIndicator) == null ? void 0 : _componentsProps$clea.className),\n              children: clearIcon\n            })) : null, hasPopupIcon ? /*#__PURE__*/_jsx(AutocompletePopupIndicator, _extends({}, getPopupIndicatorProps(), {\n              disabled: disabled,\n              \"aria-label\": popupOpen ? closeText : openText,\n              title: popupOpen ? closeText : openText,\n              ownerState: ownerState\n            }, componentsProps.popupIndicator, {\n              className: clsx(classes.popupIndicator, (_componentsProps$popu = componentsProps.popupIndicator) == null ? void 0 : _componentsProps$popu.className),\n              children: popupIcon\n            })) : null]\n          })\n        }),\n        inputProps: _extends({\n          className: classes.input,\n          disabled,\n          readOnly\n        }, getInputProps())\n      })\n    })), anchorEl ? /*#__PURE__*/_jsx(AutocompletePopper, _extends({\n      as: PopperComponent,\n      disablePortal: disablePortal,\n      style: {\n        width: anchorEl ? anchorEl.clientWidth : null\n      },\n      ownerState: ownerState,\n      role: \"presentation\",\n      anchorEl: anchorEl,\n      open: popupOpen\n    }, componentsProps.popper, {\n      className: clsx(classes.popper, (_componentsProps$popp = componentsProps.popper) == null ? void 0 : _componentsProps$popp.className),\n      children: /*#__PURE__*/_jsxs(AutocompletePaper, _extends({\n        ownerState: ownerState,\n        as: PaperComponent\n      }, componentsProps.paper, {\n        className: clsx(classes.paper, (_componentsProps$pape = componentsProps.paper) == null ? void 0 : _componentsProps$pape.className),\n        children: [loading && groupedOptions.length === 0 ? /*#__PURE__*/_jsx(AutocompleteLoading, {\n          className: classes.loading,\n          ownerState: ownerState,\n          children: loadingText\n        }) : null, groupedOptions.length === 0 && !freeSolo && !loading ? /*#__PURE__*/_jsx(AutocompleteNoOptions, {\n          className: classes.noOptions,\n          ownerState: ownerState,\n          role: \"presentation\",\n          onMouseDown: event => {\n            // Prevent input blur when interacting with the \"no options\" content\n            event.preventDefault();\n          },\n          children: noOptionsText\n        }) : null, groupedOptions.length > 0 ? /*#__PURE__*/_jsx(AutocompleteListbox, _extends({\n          as: ListboxComponent,\n          className: classes.listbox,\n          ownerState: ownerState\n        }, getListboxProps(), ListboxProps, {\n          children: groupedOptions.map((option, index) => {\n            if (groupBy) {\n              return renderGroup({\n                key: option.key,\n                group: option.group,\n                children: option.options.map((option2, index2) => renderListOption(option2, option.index + index2))\n              });\n            }\n            return renderListOption(option, index);\n          })\n        })) : null]\n      }))\n    })) : null]\n  });\n});\nprocess.env.NODE_ENV !== \"production\" ? Autocomplete.propTypes\n/* remove-proptypes */ = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * If `true`, the portion of the selected suggestion that has not been typed by the user,\n   * known as the completion string, appears inline after the input cursor in the textbox.\n   * The inline completion string is visually highlighted and has a selected state.\n   * @default false\n   */\n  autoComplete: PropTypes.bool,\n  /**\n   * If `true`, the first option is automatically highlighted.\n   * @default false\n   */\n  autoHighlight: PropTypes.bool,\n  /**\n   * If `true`, the selected option becomes the value of the input\n   * when the Autocomplete loses focus unless the user chooses\n   * a different option or changes the character string in the input.\n   * @default false\n   */\n  autoSelect: PropTypes.bool,\n  /**\n   * Control if the input should be blurred when an option is selected:\n   *\n   * - `false` the input is not blurred.\n   * - `true` the input is always blurred.\n   * - `touch` the input is blurred after a touch event.\n   * - `mouse` the input is blurred after a mouse event.\n   * @default false\n   */\n  blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]),\n  /**\n   * Props applied to the [`Chip`](/material-ui/api/chip/) element.\n   */\n  ChipProps: PropTypes.object,\n  /**\n   * Override or extend the styles applied to the component.\n   */\n  classes: PropTypes.object,\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n  /**\n   * The icon to display in place of the default clear icon.\n   * @default <ClearIcon fontSize=\"small\" />\n   */\n  clearIcon: PropTypes.node,\n  /**\n   * If `true`, the input's text is cleared on blur if no value is selected.\n   *\n   * Set to `true` if you want to help the user enter a new value.\n   * Set to `false` if you want to help the user resume their search.\n   * @default !props.freeSolo\n   */\n  clearOnBlur: PropTypes.bool,\n  /**\n   * If `true`, clear all values when the user presses escape and the popup is closed.\n   * @default false\n   */\n  clearOnEscape: PropTypes.bool,\n  /**\n   * Override the default text for the *clear* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Clear'\n   */\n  clearText: PropTypes.string,\n  /**\n   * Override the default text for the *close popup* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Close'\n   */\n  closeText: PropTypes.string,\n  /**\n   * The props used for each slot inside.\n   * @default {}\n   */\n  componentsProps: PropTypes.shape({\n    clearIndicator: PropTypes.object,\n    paper: PropTypes.object,\n    popper: PropTypes.object,\n    popupIndicator: PropTypes.object\n  }),\n  /**\n   * The default value. Use when the component is not controlled.\n   * @default props.multiple ? [] : null\n   */\n  defaultValue: chainPropTypes(PropTypes.any, props => {\n    if (props.multiple && props.defaultValue !== undefined && !Array.isArray(props.defaultValue)) {\n      return new Error(['MUI: The Autocomplete expects the `defaultValue` prop to be an array when `multiple={true}` or undefined.', `However, ${props.defaultValue} was provided.`].join('\\n'));\n    }\n    return null;\n  }),\n  /**\n   * If `true`, the input can't be cleared.\n   * @default false\n   */\n  disableClearable: PropTypes.bool,\n  /**\n   * If `true`, the popup won't close when a value is selected.\n   * @default false\n   */\n  disableCloseOnSelect: PropTypes.bool,\n  /**\n   * If `true`, the component is disabled.\n   * @default false\n   */\n  disabled: PropTypes.bool,\n  /**\n   * If `true`, will allow focus on disabled items.\n   * @default false\n   */\n  disabledItemsFocusable: PropTypes.bool,\n  /**\n   * If `true`, the list box in the popup will not wrap focus.\n   * @default false\n   */\n  disableListWrap: PropTypes.bool,\n  /**\n   * If `true`, the `Popper` content will be under the DOM hierarchy of the parent component.\n   * @default false\n   */\n  disablePortal: PropTypes.bool,\n  /**\n   * A function that determines the filtered options to be rendered on search.\n   *\n   * @param {T[]} options The options to render.\n   * @param {object} state The state of the component.\n   * @returns {T[]}\n   */\n  filterOptions: PropTypes.func,\n  /**\n   * If `true`, hide the selected options from the list box.\n   * @default false\n   */\n  filterSelectedOptions: PropTypes.bool,\n  /**\n   * Force the visibility display of the popup icon.\n   * @default 'auto'\n   */\n  forcePopupIcon: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.bool]),\n  /**\n   * If `true`, the Autocomplete is free solo, meaning that the user input is not bound to provided options.\n   * @default false\n   */\n  freeSolo: PropTypes.bool,\n  /**\n   * If `true`, the input will take up the full width of its container.\n   * @default false\n   */\n  fullWidth: PropTypes.bool,\n  /**\n   * The label to display when the tags are truncated (`limitTags`).\n   *\n   * @param {number} more The number of truncated tags.\n   * @returns {ReactNode}\n   * @default (more) => `+${more}`\n   */\n  getLimitTagsText: PropTypes.func,\n  /**\n   * Used to determine the disabled state for a given option.\n   *\n   * @param {T} option The option to test.\n   * @returns {boolean}\n   */\n  getOptionDisabled: PropTypes.func,\n  /**\n   * Used to determine the string value for a given option.\n   * It's used to fill the input (and the list box options if `renderOption` is not provided).\n   *\n   * If used in free solo mode, it must accept both the type of the options and a string.\n   *\n   * @param {T} option\n   * @returns {string}\n   * @default (option) => option.label ?? option\n   */\n  getOptionLabel: PropTypes.func,\n  /**\n   * If provided, the options will be grouped under the returned string.\n   * The groupBy value is also used as the text for group headings when `renderGroup` is not provided.\n   *\n   * @param {T} options The options to group.\n   * @returns {string}\n   */\n  groupBy: PropTypes.func,\n  /**\n   * If `true`, the component handles the \"Home\" and \"End\" keys when the popup is open.\n   * It should move focus to the first option and last option, respectively.\n   * @default !props.freeSolo\n   */\n  handleHomeEndKeys: PropTypes.bool,\n  /**\n   * This prop is used to help implement the accessibility logic.\n   * If you don't provide an id it will fall back to a randomly generated one.\n   */\n  id: PropTypes.string,\n  /**\n   * If `true`, the highlight can move to the input.\n   * @default false\n   */\n  includeInputInList: PropTypes.bool,\n  /**\n   * The input value.\n   */\n  inputValue: PropTypes.string,\n  /**\n   * Used to determine if the option represents the given value.\n   * Uses strict equality by default.\n   * ⚠️ Both arguments need to be handled, an option can only match with one value.\n   *\n   * @param {T} option The option to test.\n   * @param {T} value The value to test against.\n   * @returns {boolean}\n   */\n  isOptionEqualToValue: PropTypes.func,\n  /**\n   * The maximum number of tags that will be visible when not focused.\n   * Set `-1` to disable the limit.\n   * @default -1\n   */\n  limitTags: integerPropType,\n  /**\n   * The component used to render the listbox.\n   * @default 'ul'\n   */\n  ListboxComponent: PropTypes.elementType,\n  /**\n   * Props applied to the Listbox element.\n   */\n  ListboxProps: PropTypes.object,\n  /**\n   * If `true`, the component is in a loading state.\n   * This shows the `loadingText` in place of suggestions (only if there are no suggestions to show, e.g. `options` are empty).\n   * @default false\n   */\n  loading: PropTypes.bool,\n  /**\n   * Text to display when in a loading state.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Loading…'\n   */\n  loadingText: PropTypes.node,\n  /**\n   * If `true`, `value` must be an array and the menu will support multiple selections.\n   * @default false\n   */\n  multiple: PropTypes.bool,\n  /**\n   * Text to display when there are no options.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'No options'\n   */\n  noOptionsText: PropTypes.node,\n  /**\n   * Callback fired when the value changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {T|T[]} value The new value of the component.\n   * @param {string} reason One of \"createOption\", \"selectOption\", \"removeOption\", \"blur\" or \"clear\".\n   * @param {string} [details]\n   */\n  onChange: PropTypes.func,\n  /**\n   * Callback fired when the popup requests to be closed.\n   * Use in controlled mode (see open).\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {string} reason Can be: `\"toggleInput\"`, `\"escape\"`, `\"selectOption\"`, `\"removeOption\"`, `\"blur\"`.\n   */\n  onClose: PropTypes.func,\n  /**\n   * Callback fired when the highlight option changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {T} option The highlighted option.\n   * @param {string} reason Can be: `\"keyboard\"`, `\"auto\"`, `\"mouse\"`.\n   */\n  onHighlightChange: PropTypes.func,\n  /**\n   * Callback fired when the input value changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {string} value The new value of the text input.\n   * @param {string} reason Can be: `\"input\"` (user input), `\"reset\"` (programmatic change), `\"clear\"`.\n   */\n  onInputChange: PropTypes.func,\n  /**\n   * Callback fired when the popup requests to be opened.\n   * Use in controlled mode (see open).\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   */\n  onOpen: PropTypes.func,\n  /**\n   * If `true`, the component is shown.\n   */\n  open: PropTypes.bool,\n  /**\n   * If `true`, the popup will open on input focus.\n   * @default false\n   */\n  openOnFocus: PropTypes.bool,\n  /**\n   * Override the default text for the *open popup* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Open'\n   */\n  openText: PropTypes.string,\n  /**\n   * Array of options.\n   */\n  options: PropTypes.array.isRequired,\n  /**\n   * The component used to render the body of the popup.\n   * @default Paper\n   */\n  PaperComponent: PropTypes.elementType,\n  /**\n   * The component used to position the popup.\n   * @default Popper\n   */\n  PopperComponent: PropTypes.elementType,\n  /**\n   * The icon to display in place of the default popup icon.\n   * @default <ArrowDropDownIcon />\n   */\n  popupIcon: PropTypes.node,\n  /**\n   * If `true`, the component becomes readonly. It is also supported for multiple tags where the tag cannot be deleted.\n   * @default false\n   */\n  readOnly: PropTypes.bool,\n  /**\n   * Render the group.\n   *\n   * @param {AutocompleteRenderGroupParams} params The group to render.\n   * @returns {ReactNode}\n   */\n  renderGroup: PropTypes.func,\n  /**\n   * Render the input.\n   *\n   * @param {object} params\n   * @returns {ReactNode}\n   */\n  renderInput: PropTypes.func.isRequired,\n  /**\n   * Render the option, use `getOptionLabel` by default.\n   *\n   * @param {object} props The props to apply on the li element.\n   * @param {T} option The option to render.\n   * @param {object} state The state of the component.\n   * @returns {ReactNode}\n   */\n  renderOption: PropTypes.func,\n  /**\n   * Render the selected value.\n   *\n   * @param {T[]} value The `value` provided to the component.\n   * @param {function} getTagProps A tag props getter.\n   * @param {object} ownerState The state of the Autocomplete component.\n   * @returns {ReactNode}\n   */\n  renderTags: PropTypes.func,\n  /**\n   * If `true`, the input's text is selected on focus.\n   * It helps the user clear the selected value.\n   * @default !props.freeSolo\n   */\n  selectOnFocus: PropTypes.bool,\n  /**\n   * The size of the component.\n   * @default 'medium'\n   */\n  size: PropTypes\n  /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['small', 'medium']), PropTypes.string]),\n  /**\n   * The system prop that allows defining system overrides as well as additional CSS styles.\n   */\n  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n  /**\n   * The value of the autocomplete.\n   *\n   * The value must have reference equality with the option in order to be selected.\n   * You can customize the equality behavior with the `isOptionEqualToValue` prop.\n   */\n  value: chainPropTypes(PropTypes.any, props => {\n    if (props.multiple && props.value !== undefined && !Array.isArray(props.value)) {\n      return new Error(['MUI: The Autocomplete expects the `value` prop to be an array when `multiple={true}` or undefined.', `However, ${props.value} was provided.`].join('\\n'));\n    }\n    return null;\n  })\n} : void 0;\nexport default Autocomplete;","map":{"version":3,"names":["_objectWithoutPropertiesLoose","_extends","_ClearIcon","_ArrowDropDownIcon","_excluded","React","PropTypes","clsx","chainPropTypes","integerPropType","unstable_composeClasses","composeClasses","useAutocomplete","createFilterOptions","alpha","Popper","ListSubheader","Paper","IconButton","Chip","inputClasses","inputBaseClasses","outlinedInputClasses","filledInputClasses","ClearIcon","ArrowDropDownIcon","useThemeProps","styled","autocompleteClasses","getAutocompleteUtilityClass","capitalize","jsx","_jsx","jsxs","_jsxs","useUtilityClasses","ownerState","classes","disablePortal","focused","fullWidth","hasClearIcon","hasPopupIcon","inputFocused","popupOpen","size","slots","root","inputRoot","input","tag","endAdornment","clearIndicator","popupIndicator","popper","paper","listbox","loading","noOptions","option","groupLabel","groupUl","AutocompleteRoot","name","slot","overridesResolver","props","styles","visibility","width","margin","maxWidth","flexWrap","paddingRight","minWidth","paddingBottom","padding","sizeSmall","right","paddingTop","paddingLeft","hiddenLabel","flexGrow","textOverflow","opacity","AutocompleteEndAdornment","position","top","AutocompleteClearIndicator","marginRight","AutocompletePopupIndicator","popupIndicatorOpen","transform","AutocompletePopper","popperDisablePortal","theme","zIndex","vars","modal","AutocompletePaper","typography","body1","overflow","AutocompleteLoading","color","palette","text","secondary","AutocompleteNoOptions","AutocompleteListbox","listStyle","maxHeight","minHeight","display","justifyContent","alignItems","cursor","boxSizing","outline","WebkitTapHighlightColor","breakpoints","up","backgroundColor","action","hover","disabledOpacity","pointerEvents","focusVisible","focus","primary","mainChannel","selectedOpacity","main","hoverOpacity","selected","focusOpacity","AutocompleteGroupLabel","background","AutocompleteGroupUl","Autocomplete","forwardRef","inProps","ref","_componentsProps$clea","_componentsProps$popu","_componentsProps$popp","_componentsProps$pape","autoComplete","autoHighlight","autoSelect","blurOnSelect","ChipProps","className","clearIcon","fontSize","clearOnBlur","freeSolo","clearOnEscape","clearText","closeText","componentsProps","defaultValue","multiple","disableClearable","disableCloseOnSelect","disabled","disabledItemsFocusable","disableListWrap","filterSelectedOptions","forcePopupIcon","getLimitTagsText","more","getOptionLabel","_option$label","label","groupBy","handleHomeEndKeys","includeInputInList","limitTags","ListboxComponent","ListboxProps","loadingText","noOptionsText","openOnFocus","openText","PaperComponent","PopperComponent","popupIcon","readOnly","renderGroup","renderGroupProp","renderInput","renderOption","renderOptionProp","renderTags","selectOnFocus","other","getRootProps","getInputProps","getInputLabelProps","getPopupIndicatorProps","getClearProps","getTagProps","getListboxProps","getOptionProps","value","dirty","id","focusedTag","anchorEl","setAnchorEl","inputValue","groupedOptions","componentName","startAdornment","length","getCustomizedTagProps","params","map","index","Array","isArray","splice","push","children","defaultRenderGroup","component","group","key","defaultRenderOption","props2","renderListOption","optionProps","Fragment","undefined","InputLabelProps","InputProps","title","inputProps","as","style","clientWidth","role","open","onMouseDown","event","preventDefault","options","option2","index2","process","env","NODE_ENV","propTypes","bool","oneOfType","oneOf","object","string","node","shape","any","Error","join","filterOptions","func","getOptionDisabled","isOptionEqualToValue","elementType","onChange","onClose","onHighlightChange","onInputChange","onOpen","array","isRequired","sx","arrayOf"],"sources":["/data/messenger.client/node_modules/@mui/material/esm/Autocomplete/Autocomplete.js"],"sourcesContent":["import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\n\nvar _ClearIcon, _ArrowDropDownIcon;\n\nconst _excluded = [\"autoComplete\", \"autoHighlight\", \"autoSelect\", \"blurOnSelect\", \"ChipProps\", \"className\", \"clearIcon\", \"clearOnBlur\", \"clearOnEscape\", \"clearText\", \"closeText\", \"componentsProps\", \"defaultValue\", \"disableClearable\", \"disableCloseOnSelect\", \"disabled\", \"disabledItemsFocusable\", \"disableListWrap\", \"disablePortal\", \"filterOptions\", \"filterSelectedOptions\", \"forcePopupIcon\", \"freeSolo\", \"fullWidth\", \"getLimitTagsText\", \"getOptionDisabled\", \"getOptionLabel\", \"isOptionEqualToValue\", \"groupBy\", \"handleHomeEndKeys\", \"id\", \"includeInputInList\", \"inputValue\", \"limitTags\", \"ListboxComponent\", \"ListboxProps\", \"loading\", \"loadingText\", \"multiple\", \"noOptionsText\", \"onChange\", \"onClose\", \"onHighlightChange\", \"onInputChange\", \"onOpen\", \"open\", \"openOnFocus\", \"openText\", \"options\", \"PaperComponent\", \"PopperComponent\", \"popupIcon\", \"readOnly\", \"renderGroup\", \"renderInput\", \"renderOption\", \"renderTags\", \"selectOnFocus\", \"size\", \"value\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { chainPropTypes, integerPropType } from '@mui/utils';\nimport { unstable_composeClasses as composeClasses, useAutocomplete, createFilterOptions } from '@mui/base';\nimport { alpha } from '@mui/system';\nimport Popper from '../Popper';\nimport ListSubheader from '../ListSubheader';\nimport Paper from '../Paper';\nimport IconButton from '../IconButton';\nimport Chip from '../Chip';\nimport inputClasses from '../Input/inputClasses';\nimport inputBaseClasses from '../InputBase/inputBaseClasses';\nimport outlinedInputClasses from '../OutlinedInput/outlinedInputClasses';\nimport filledInputClasses from '../FilledInput/filledInputClasses';\nimport ClearIcon from '../internal/svg-icons/Close';\nimport ArrowDropDownIcon from '../internal/svg-icons/ArrowDropDown';\nimport useThemeProps from '../styles/useThemeProps';\nimport styled from '../styles/styled';\nimport autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses';\nimport capitalize from '../utils/capitalize';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n\nconst useUtilityClasses = ownerState => {\n  const {\n    classes,\n    disablePortal,\n    focused,\n    fullWidth,\n    hasClearIcon,\n    hasPopupIcon,\n    inputFocused,\n    popupOpen,\n    size\n  } = ownerState;\n  const slots = {\n    root: ['root', focused && 'focused', fullWidth && 'fullWidth', hasClearIcon && 'hasClearIcon', hasPopupIcon && 'hasPopupIcon'],\n    inputRoot: ['inputRoot'],\n    input: ['input', inputFocused && 'inputFocused'],\n    tag: ['tag', `tagSize${capitalize(size)}`],\n    endAdornment: ['endAdornment'],\n    clearIndicator: ['clearIndicator'],\n    popupIndicator: ['popupIndicator', popupOpen && 'popupIndicatorOpen'],\n    popper: ['popper', disablePortal && 'popperDisablePortal'],\n    paper: ['paper'],\n    listbox: ['listbox'],\n    loading: ['loading'],\n    noOptions: ['noOptions'],\n    option: ['option'],\n    groupLabel: ['groupLabel'],\n    groupUl: ['groupUl']\n  };\n  return composeClasses(slots, getAutocompleteUtilityClass, classes);\n};\n\nconst AutocompleteRoot = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Root',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    const {\n      fullWidth,\n      hasClearIcon,\n      hasPopupIcon,\n      inputFocused,\n      size\n    } = ownerState;\n    return [{\n      [`& .${autocompleteClasses.tag}`]: styles.tag\n    }, {\n      [`& .${autocompleteClasses.tag}`]: styles[`tagSize${capitalize(size)}`]\n    }, {\n      [`& .${autocompleteClasses.inputRoot}`]: styles.inputRoot\n    }, {\n      [`& .${autocompleteClasses.input}`]: styles.input\n    }, {\n      [`& .${autocompleteClasses.input}`]: inputFocused && styles.inputFocused\n    }, styles.root, fullWidth && styles.fullWidth, hasPopupIcon && styles.hasPopupIcon, hasClearIcon && styles.hasClearIcon];\n  }\n})(({\n  ownerState\n}) => _extends({\n  [`&.${autocompleteClasses.focused} .${autocompleteClasses.clearIndicator}`]: {\n    visibility: 'visible'\n  },\n\n  /* Avoid double tap issue on iOS */\n  '@media (pointer: fine)': {\n    [`&:hover .${autocompleteClasses.clearIndicator}`]: {\n      visibility: 'visible'\n    }\n  }\n}, ownerState.fullWidth && {\n  width: '100%'\n}, {\n  [`& .${autocompleteClasses.tag}`]: _extends({\n    margin: 3,\n    maxWidth: 'calc(100% - 6px)'\n  }, ownerState.size === 'small' && {\n    margin: 2,\n    maxWidth: 'calc(100% - 4px)'\n  }),\n  [`& .${autocompleteClasses.inputRoot}`]: {\n    flexWrap: 'wrap',\n    [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 26 + 4\n    },\n    [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 52 + 4\n    },\n    [`& .${autocompleteClasses.input}`]: {\n      width: 0,\n      minWidth: 30\n    }\n  },\n  [`& .${inputClasses.root}`]: {\n    paddingBottom: 1,\n    '& .MuiInput-input': {\n      padding: '4px 4px 4px 0px'\n    }\n  },\n  [`& .${inputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n    [`& .${inputClasses.input}`]: {\n      padding: '2px 4px 3px 0'\n    }\n  },\n  [`& .${outlinedInputClasses.root}`]: {\n    padding: 9,\n    [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 26 + 4 + 9\n    },\n    [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 52 + 4 + 9\n    },\n    [`& .${autocompleteClasses.input}`]: {\n      padding: '7.5px 4px 7.5px 6px'\n    },\n    [`& .${autocompleteClasses.endAdornment}`]: {\n      right: 9\n    }\n  },\n  [`& .${outlinedInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n    // Don't specify paddingRight, as it overrides the default value set when there is only\n    // one of the popup or clear icon as the specificity is equal so the latter one wins\n    paddingTop: 6,\n    paddingBottom: 6,\n    paddingLeft: 6,\n    [`& .${autocompleteClasses.input}`]: {\n      padding: '2.5px 4px 2.5px 6px'\n    }\n  },\n  [`& .${filledInputClasses.root}`]: {\n    paddingTop: 19,\n    paddingLeft: 8,\n    [`.${autocompleteClasses.hasPopupIcon}&, .${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 26 + 4 + 9\n    },\n    [`.${autocompleteClasses.hasPopupIcon}.${autocompleteClasses.hasClearIcon}&`]: {\n      paddingRight: 52 + 4 + 9\n    },\n    [`& .${filledInputClasses.input}`]: {\n      padding: '7px 4px'\n    },\n    [`& .${autocompleteClasses.endAdornment}`]: {\n      right: 9\n    }\n  },\n  [`& .${filledInputClasses.root}.${inputBaseClasses.sizeSmall}`]: {\n    paddingBottom: 1,\n    [`& .${filledInputClasses.input}`]: {\n      padding: '2.5px 4px'\n    }\n  },\n  [`& .${inputBaseClasses.hiddenLabel}`]: {\n    paddingTop: 8\n  },\n  [`& .${autocompleteClasses.input}`]: _extends({\n    flexGrow: 1,\n    textOverflow: 'ellipsis',\n    opacity: 0\n  }, ownerState.inputFocused && {\n    opacity: 1\n  })\n}));\nconst AutocompleteEndAdornment = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'EndAdornment',\n  overridesResolver: (props, styles) => styles.endAdornment\n})({\n  // We use a position absolute to support wrapping tags.\n  position: 'absolute',\n  right: 0,\n  top: 'calc(50% - 14px)' // Center vertically\n\n});\nconst AutocompleteClearIndicator = styled(IconButton, {\n  name: 'MuiAutocomplete',\n  slot: 'ClearIndicator',\n  overridesResolver: (props, styles) => styles.clearIndicator\n})({\n  marginRight: -2,\n  padding: 4,\n  visibility: 'hidden'\n});\nconst AutocompletePopupIndicator = styled(IconButton, {\n  name: 'MuiAutocomplete',\n  slot: 'PopupIndicator',\n  overridesResolver: ({\n    ownerState\n  }, styles) => _extends({}, styles.popupIndicator, ownerState.popupOpen && styles.popupIndicatorOpen)\n})(({\n  ownerState\n}) => _extends({\n  padding: 2,\n  marginRight: -2\n}, ownerState.popupOpen && {\n  transform: 'rotate(180deg)'\n}));\nconst AutocompletePopper = styled(Popper, {\n  name: 'MuiAutocomplete',\n  slot: 'Popper',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    return [{\n      [`& .${autocompleteClasses.option}`]: styles.option\n    }, styles.popper, ownerState.disablePortal && styles.popperDisablePortal];\n  }\n})(({\n  theme,\n  ownerState\n}) => _extends({\n  zIndex: (theme.vars || theme).zIndex.modal\n}, ownerState.disablePortal && {\n  position: 'absolute'\n}));\nconst AutocompletePaper = styled(Paper, {\n  name: 'MuiAutocomplete',\n  slot: 'Paper',\n  overridesResolver: (props, styles) => styles.paper\n})(({\n  theme\n}) => _extends({}, theme.typography.body1, {\n  overflow: 'auto'\n}));\nconst AutocompleteLoading = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Loading',\n  overridesResolver: (props, styles) => styles.loading\n})(({\n  theme\n}) => ({\n  color: (theme.vars || theme).palette.text.secondary,\n  padding: '14px 16px'\n}));\nconst AutocompleteNoOptions = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'NoOptions',\n  overridesResolver: (props, styles) => styles.noOptions\n})(({\n  theme\n}) => ({\n  color: (theme.vars || theme).palette.text.secondary,\n  padding: '14px 16px'\n}));\nconst AutocompleteListbox = styled('div', {\n  name: 'MuiAutocomplete',\n  slot: 'Listbox',\n  overridesResolver: (props, styles) => styles.listbox\n})(({\n  theme\n}) => ({\n  listStyle: 'none',\n  margin: 0,\n  padding: '8px 0',\n  maxHeight: '40vh',\n  overflow: 'auto',\n  [`& .${autocompleteClasses.option}`]: {\n    minHeight: 48,\n    display: 'flex',\n    overflow: 'hidden',\n    justifyContent: 'flex-start',\n    alignItems: 'center',\n    cursor: 'pointer',\n    paddingTop: 6,\n    boxSizing: 'border-box',\n    outline: '0',\n    WebkitTapHighlightColor: 'transparent',\n    paddingBottom: 6,\n    paddingLeft: 16,\n    paddingRight: 16,\n    [theme.breakpoints.up('sm')]: {\n      minHeight: 'auto'\n    },\n    [`&.${autocompleteClasses.focused}`]: {\n      backgroundColor: (theme.vars || theme).palette.action.hover,\n      // Reset on touch devices, it doesn't add specificity\n      '@media (hover: none)': {\n        backgroundColor: 'transparent'\n      }\n    },\n    '&[aria-disabled=\"true\"]': {\n      opacity: (theme.vars || theme).palette.action.disabledOpacity,\n      pointerEvents: 'none'\n    },\n    [`&.${autocompleteClasses.focusVisible}`]: {\n      backgroundColor: (theme.vars || theme).palette.action.focus\n    },\n    '&[aria-selected=\"true\"]': {\n      backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / ${theme.vars.palette.action.selectedOpacity})` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity),\n      [`&.${autocompleteClasses.focused}`]: {\n        backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity),\n        // Reset on touch devices, it doesn't add specificity\n        '@media (hover: none)': {\n          backgroundColor: (theme.vars || theme).palette.action.selected\n        }\n      },\n      [`&.${autocompleteClasses.focusVisible}`]: {\n        backgroundColor: theme.vars ? `rgba(${theme.vars.palette.primary.mainChannel} / calc(${theme.vars.palette.action.selectedOpacity} + ${theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.primary.main, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)\n      }\n    }\n  }\n}));\nconst AutocompleteGroupLabel = styled(ListSubheader, {\n  name: 'MuiAutocomplete',\n  slot: 'GroupLabel',\n  overridesResolver: (props, styles) => styles.groupLabel\n})(({\n  theme\n}) => ({\n  backgroundColor: (theme.vars || theme).palette.background.paper,\n  top: -8\n}));\nconst AutocompleteGroupUl = styled('ul', {\n  name: 'MuiAutocomplete',\n  slot: 'GroupUl',\n  overridesResolver: (props, styles) => styles.groupUl\n})({\n  padding: 0,\n  [`& .${autocompleteClasses.option}`]: {\n    paddingLeft: 24\n  }\n});\nexport { createFilterOptions };\nconst Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps, ref) {\n  var _componentsProps$clea, _componentsProps$popu, _componentsProps$popp, _componentsProps$pape;\n\n  const props = useThemeProps({\n    props: inProps,\n    name: 'MuiAutocomplete'\n  });\n  /* eslint-disable @typescript-eslint/no-unused-vars */\n\n  const {\n    autoComplete = false,\n    autoHighlight = false,\n    autoSelect = false,\n    blurOnSelect = false,\n    ChipProps,\n    className,\n    clearIcon = _ClearIcon || (_ClearIcon = /*#__PURE__*/_jsx(ClearIcon, {\n      fontSize: \"small\"\n    })),\n    clearOnBlur = !props.freeSolo,\n    clearOnEscape = false,\n    clearText = 'Clear',\n    closeText = 'Close',\n    componentsProps = {},\n    defaultValue = props.multiple ? [] : null,\n    disableClearable = false,\n    disableCloseOnSelect = false,\n    disabled = false,\n    disabledItemsFocusable = false,\n    disableListWrap = false,\n    disablePortal = false,\n    filterSelectedOptions = false,\n    forcePopupIcon = 'auto',\n    freeSolo = false,\n    fullWidth = false,\n    getLimitTagsText = more => `+${more}`,\n    getOptionLabel = option => {\n      var _option$label;\n\n      return (_option$label = option.label) != null ? _option$label : option;\n    },\n    groupBy,\n    handleHomeEndKeys = !props.freeSolo,\n    includeInputInList = false,\n    limitTags = -1,\n    ListboxComponent = 'ul',\n    ListboxProps,\n    loading = false,\n    loadingText = 'Loading…',\n    multiple = false,\n    noOptionsText = 'No options',\n    openOnFocus = false,\n    openText = 'Open',\n    PaperComponent = Paper,\n    PopperComponent = Popper,\n    popupIcon = _ArrowDropDownIcon || (_ArrowDropDownIcon = /*#__PURE__*/_jsx(ArrowDropDownIcon, {})),\n    readOnly = false,\n    renderGroup: renderGroupProp,\n    renderInput,\n    renderOption: renderOptionProp,\n    renderTags,\n    selectOnFocus = !props.freeSolo,\n    size = 'medium'\n  } = props,\n        other = _objectWithoutPropertiesLoose(props, _excluded);\n  /* eslint-enable @typescript-eslint/no-unused-vars */\n\n\n  const {\n    getRootProps,\n    getInputProps,\n    getInputLabelProps,\n    getPopupIndicatorProps,\n    getClearProps,\n    getTagProps,\n    getListboxProps,\n    getOptionProps,\n    value,\n    dirty,\n    id,\n    popupOpen,\n    focused,\n    focusedTag,\n    anchorEl,\n    setAnchorEl,\n    inputValue,\n    groupedOptions\n  } = useAutocomplete(_extends({}, props, {\n    componentName: 'Autocomplete'\n  }));\n  const hasClearIcon = !disableClearable && !disabled && dirty && !readOnly;\n  const hasPopupIcon = (!freeSolo || forcePopupIcon === true) && forcePopupIcon !== false; // If you modify this, make sure to keep the `AutocompleteOwnerState` type in sync.\n\n  const ownerState = _extends({}, props, {\n    disablePortal,\n    focused,\n    fullWidth,\n    hasClearIcon,\n    hasPopupIcon,\n    inputFocused: focusedTag === -1,\n    popupOpen,\n    size\n  });\n\n  const classes = useUtilityClasses(ownerState);\n  let startAdornment;\n\n  if (multiple && value.length > 0) {\n    const getCustomizedTagProps = params => _extends({\n      className: classes.tag,\n      disabled\n    }, getTagProps(params));\n\n    if (renderTags) {\n      startAdornment = renderTags(value, getCustomizedTagProps, ownerState);\n    } else {\n      startAdornment = value.map((option, index) => /*#__PURE__*/_jsx(Chip, _extends({\n        label: getOptionLabel(option),\n        size: size\n      }, getCustomizedTagProps({\n        index\n      }), ChipProps)));\n    }\n  }\n\n  if (limitTags > -1 && Array.isArray(startAdornment)) {\n    const more = startAdornment.length - limitTags;\n\n    if (!focused && more > 0) {\n      startAdornment = startAdornment.splice(0, limitTags);\n      startAdornment.push( /*#__PURE__*/_jsx(\"span\", {\n        className: classes.tag,\n        children: getLimitTagsText(more)\n      }, startAdornment.length));\n    }\n  }\n\n  const defaultRenderGroup = params => /*#__PURE__*/_jsxs(\"li\", {\n    children: [/*#__PURE__*/_jsx(AutocompleteGroupLabel, {\n      className: classes.groupLabel,\n      ownerState: ownerState,\n      component: \"div\",\n      children: params.group\n    }), /*#__PURE__*/_jsx(AutocompleteGroupUl, {\n      className: classes.groupUl,\n      ownerState: ownerState,\n      children: params.children\n    })]\n  }, params.key);\n\n  const renderGroup = renderGroupProp || defaultRenderGroup;\n\n  const defaultRenderOption = (props2, option) => /*#__PURE__*/_jsx(\"li\", _extends({}, props2, {\n    children: getOptionLabel(option)\n  }));\n\n  const renderOption = renderOptionProp || defaultRenderOption;\n\n  const renderListOption = (option, index) => {\n    const optionProps = getOptionProps({\n      option,\n      index\n    });\n    return renderOption(_extends({}, optionProps, {\n      className: classes.option\n    }), option, {\n      selected: optionProps['aria-selected'],\n      inputValue\n    });\n  };\n\n  return /*#__PURE__*/_jsxs(React.Fragment, {\n    children: [/*#__PURE__*/_jsx(AutocompleteRoot, _extends({\n      ref: ref,\n      className: clsx(classes.root, className),\n      ownerState: ownerState\n    }, getRootProps(other), {\n      children: renderInput({\n        id,\n        disabled,\n        fullWidth: true,\n        size: size === 'small' ? 'small' : undefined,\n        InputLabelProps: getInputLabelProps(),\n        InputProps: _extends({\n          ref: setAnchorEl,\n          className: classes.inputRoot,\n          startAdornment\n        }, (hasClearIcon || hasPopupIcon) && {\n          endAdornment: /*#__PURE__*/_jsxs(AutocompleteEndAdornment, {\n            className: classes.endAdornment,\n            ownerState: ownerState,\n            children: [hasClearIcon ? /*#__PURE__*/_jsx(AutocompleteClearIndicator, _extends({}, getClearProps(), {\n              \"aria-label\": clearText,\n              title: clearText,\n              ownerState: ownerState\n            }, componentsProps.clearIndicator, {\n              className: clsx(classes.clearIndicator, (_componentsProps$clea = componentsProps.clearIndicator) == null ? void 0 : _componentsProps$clea.className),\n              children: clearIcon\n            })) : null, hasPopupIcon ? /*#__PURE__*/_jsx(AutocompletePopupIndicator, _extends({}, getPopupIndicatorProps(), {\n              disabled: disabled,\n              \"aria-label\": popupOpen ? closeText : openText,\n              title: popupOpen ? closeText : openText,\n              ownerState: ownerState\n            }, componentsProps.popupIndicator, {\n              className: clsx(classes.popupIndicator, (_componentsProps$popu = componentsProps.popupIndicator) == null ? void 0 : _componentsProps$popu.className),\n              children: popupIcon\n            })) : null]\n          })\n        }),\n        inputProps: _extends({\n          className: classes.input,\n          disabled,\n          readOnly\n        }, getInputProps())\n      })\n    })), anchorEl ? /*#__PURE__*/_jsx(AutocompletePopper, _extends({\n      as: PopperComponent,\n      disablePortal: disablePortal,\n      style: {\n        width: anchorEl ? anchorEl.clientWidth : null\n      },\n      ownerState: ownerState,\n      role: \"presentation\",\n      anchorEl: anchorEl,\n      open: popupOpen\n    }, componentsProps.popper, {\n      className: clsx(classes.popper, (_componentsProps$popp = componentsProps.popper) == null ? void 0 : _componentsProps$popp.className),\n      children: /*#__PURE__*/_jsxs(AutocompletePaper, _extends({\n        ownerState: ownerState,\n        as: PaperComponent\n      }, componentsProps.paper, {\n        className: clsx(classes.paper, (_componentsProps$pape = componentsProps.paper) == null ? void 0 : _componentsProps$pape.className),\n        children: [loading && groupedOptions.length === 0 ? /*#__PURE__*/_jsx(AutocompleteLoading, {\n          className: classes.loading,\n          ownerState: ownerState,\n          children: loadingText\n        }) : null, groupedOptions.length === 0 && !freeSolo && !loading ? /*#__PURE__*/_jsx(AutocompleteNoOptions, {\n          className: classes.noOptions,\n          ownerState: ownerState,\n          role: \"presentation\",\n          onMouseDown: event => {\n            // Prevent input blur when interacting with the \"no options\" content\n            event.preventDefault();\n          },\n          children: noOptionsText\n        }) : null, groupedOptions.length > 0 ? /*#__PURE__*/_jsx(AutocompleteListbox, _extends({\n          as: ListboxComponent,\n          className: classes.listbox,\n          ownerState: ownerState\n        }, getListboxProps(), ListboxProps, {\n          children: groupedOptions.map((option, index) => {\n            if (groupBy) {\n              return renderGroup({\n                key: option.key,\n                group: option.group,\n                children: option.options.map((option2, index2) => renderListOption(option2, option.index + index2))\n              });\n            }\n\n            return renderListOption(option, index);\n          })\n        })) : null]\n      }))\n    })) : null]\n  });\n});\nprocess.env.NODE_ENV !== \"production\" ? Autocomplete.propTypes\n/* remove-proptypes */\n= {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * If `true`, the portion of the selected suggestion that has not been typed by the user,\n   * known as the completion string, appears inline after the input cursor in the textbox.\n   * The inline completion string is visually highlighted and has a selected state.\n   * @default false\n   */\n  autoComplete: PropTypes.bool,\n\n  /**\n   * If `true`, the first option is automatically highlighted.\n   * @default false\n   */\n  autoHighlight: PropTypes.bool,\n\n  /**\n   * If `true`, the selected option becomes the value of the input\n   * when the Autocomplete loses focus unless the user chooses\n   * a different option or changes the character string in the input.\n   * @default false\n   */\n  autoSelect: PropTypes.bool,\n\n  /**\n   * Control if the input should be blurred when an option is selected:\n   *\n   * - `false` the input is not blurred.\n   * - `true` the input is always blurred.\n   * - `touch` the input is blurred after a touch event.\n   * - `mouse` the input is blurred after a mouse event.\n   * @default false\n   */\n  blurOnSelect: PropTypes.oneOfType([PropTypes.oneOf(['mouse', 'touch']), PropTypes.bool]),\n\n  /**\n   * Props applied to the [`Chip`](/material-ui/api/chip/) element.\n   */\n  ChipProps: PropTypes.object,\n\n  /**\n   * Override or extend the styles applied to the component.\n   */\n  classes: PropTypes.object,\n\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n\n  /**\n   * The icon to display in place of the default clear icon.\n   * @default <ClearIcon fontSize=\"small\" />\n   */\n  clearIcon: PropTypes.node,\n\n  /**\n   * If `true`, the input's text is cleared on blur if no value is selected.\n   *\n   * Set to `true` if you want to help the user enter a new value.\n   * Set to `false` if you want to help the user resume their search.\n   * @default !props.freeSolo\n   */\n  clearOnBlur: PropTypes.bool,\n\n  /**\n   * If `true`, clear all values when the user presses escape and the popup is closed.\n   * @default false\n   */\n  clearOnEscape: PropTypes.bool,\n\n  /**\n   * Override the default text for the *clear* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Clear'\n   */\n  clearText: PropTypes.string,\n\n  /**\n   * Override the default text for the *close popup* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Close'\n   */\n  closeText: PropTypes.string,\n\n  /**\n   * The props used for each slot inside.\n   * @default {}\n   */\n  componentsProps: PropTypes.shape({\n    clearIndicator: PropTypes.object,\n    paper: PropTypes.object,\n    popper: PropTypes.object,\n    popupIndicator: PropTypes.object\n  }),\n\n  /**\n   * The default value. Use when the component is not controlled.\n   * @default props.multiple ? [] : null\n   */\n  defaultValue: chainPropTypes(PropTypes.any, props => {\n    if (props.multiple && props.defaultValue !== undefined && !Array.isArray(props.defaultValue)) {\n      return new Error(['MUI: The Autocomplete expects the `defaultValue` prop to be an array when `multiple={true}` or undefined.', `However, ${props.defaultValue} was provided.`].join('\\n'));\n    }\n\n    return null;\n  }),\n\n  /**\n   * If `true`, the input can't be cleared.\n   * @default false\n   */\n  disableClearable: PropTypes.bool,\n\n  /**\n   * If `true`, the popup won't close when a value is selected.\n   * @default false\n   */\n  disableCloseOnSelect: PropTypes.bool,\n\n  /**\n   * If `true`, the component is disabled.\n   * @default false\n   */\n  disabled: PropTypes.bool,\n\n  /**\n   * If `true`, will allow focus on disabled items.\n   * @default false\n   */\n  disabledItemsFocusable: PropTypes.bool,\n\n  /**\n   * If `true`, the list box in the popup will not wrap focus.\n   * @default false\n   */\n  disableListWrap: PropTypes.bool,\n\n  /**\n   * If `true`, the `Popper` content will be under the DOM hierarchy of the parent component.\n   * @default false\n   */\n  disablePortal: PropTypes.bool,\n\n  /**\n   * A function that determines the filtered options to be rendered on search.\n   *\n   * @param {T[]} options The options to render.\n   * @param {object} state The state of the component.\n   * @returns {T[]}\n   */\n  filterOptions: PropTypes.func,\n\n  /**\n   * If `true`, hide the selected options from the list box.\n   * @default false\n   */\n  filterSelectedOptions: PropTypes.bool,\n\n  /**\n   * Force the visibility display of the popup icon.\n   * @default 'auto'\n   */\n  forcePopupIcon: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.bool]),\n\n  /**\n   * If `true`, the Autocomplete is free solo, meaning that the user input is not bound to provided options.\n   * @default false\n   */\n  freeSolo: PropTypes.bool,\n\n  /**\n   * If `true`, the input will take up the full width of its container.\n   * @default false\n   */\n  fullWidth: PropTypes.bool,\n\n  /**\n   * The label to display when the tags are truncated (`limitTags`).\n   *\n   * @param {number} more The number of truncated tags.\n   * @returns {ReactNode}\n   * @default (more) => `+${more}`\n   */\n  getLimitTagsText: PropTypes.func,\n\n  /**\n   * Used to determine the disabled state for a given option.\n   *\n   * @param {T} option The option to test.\n   * @returns {boolean}\n   */\n  getOptionDisabled: PropTypes.func,\n\n  /**\n   * Used to determine the string value for a given option.\n   * It's used to fill the input (and the list box options if `renderOption` is not provided).\n   *\n   * If used in free solo mode, it must accept both the type of the options and a string.\n   *\n   * @param {T} option\n   * @returns {string}\n   * @default (option) => option.label ?? option\n   */\n  getOptionLabel: PropTypes.func,\n\n  /**\n   * If provided, the options will be grouped under the returned string.\n   * The groupBy value is also used as the text for group headings when `renderGroup` is not provided.\n   *\n   * @param {T} options The options to group.\n   * @returns {string}\n   */\n  groupBy: PropTypes.func,\n\n  /**\n   * If `true`, the component handles the \"Home\" and \"End\" keys when the popup is open.\n   * It should move focus to the first option and last option, respectively.\n   * @default !props.freeSolo\n   */\n  handleHomeEndKeys: PropTypes.bool,\n\n  /**\n   * This prop is used to help implement the accessibility logic.\n   * If you don't provide an id it will fall back to a randomly generated one.\n   */\n  id: PropTypes.string,\n\n  /**\n   * If `true`, the highlight can move to the input.\n   * @default false\n   */\n  includeInputInList: PropTypes.bool,\n\n  /**\n   * The input value.\n   */\n  inputValue: PropTypes.string,\n\n  /**\n   * Used to determine if the option represents the given value.\n   * Uses strict equality by default.\n   * ⚠️ Both arguments need to be handled, an option can only match with one value.\n   *\n   * @param {T} option The option to test.\n   * @param {T} value The value to test against.\n   * @returns {boolean}\n   */\n  isOptionEqualToValue: PropTypes.func,\n\n  /**\n   * The maximum number of tags that will be visible when not focused.\n   * Set `-1` to disable the limit.\n   * @default -1\n   */\n  limitTags: integerPropType,\n\n  /**\n   * The component used to render the listbox.\n   * @default 'ul'\n   */\n  ListboxComponent: PropTypes.elementType,\n\n  /**\n   * Props applied to the Listbox element.\n   */\n  ListboxProps: PropTypes.object,\n\n  /**\n   * If `true`, the component is in a loading state.\n   * This shows the `loadingText` in place of suggestions (only if there are no suggestions to show, e.g. `options` are empty).\n   * @default false\n   */\n  loading: PropTypes.bool,\n\n  /**\n   * Text to display when in a loading state.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Loading…'\n   */\n  loadingText: PropTypes.node,\n\n  /**\n   * If `true`, `value` must be an array and the menu will support multiple selections.\n   * @default false\n   */\n  multiple: PropTypes.bool,\n\n  /**\n   * Text to display when there are no options.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'No options'\n   */\n  noOptionsText: PropTypes.node,\n\n  /**\n   * Callback fired when the value changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {T|T[]} value The new value of the component.\n   * @param {string} reason One of \"createOption\", \"selectOption\", \"removeOption\", \"blur\" or \"clear\".\n   * @param {string} [details]\n   */\n  onChange: PropTypes.func,\n\n  /**\n   * Callback fired when the popup requests to be closed.\n   * Use in controlled mode (see open).\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {string} reason Can be: `\"toggleInput\"`, `\"escape\"`, `\"selectOption\"`, `\"removeOption\"`, `\"blur\"`.\n   */\n  onClose: PropTypes.func,\n\n  /**\n   * Callback fired when the highlight option changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {T} option The highlighted option.\n   * @param {string} reason Can be: `\"keyboard\"`, `\"auto\"`, `\"mouse\"`.\n   */\n  onHighlightChange: PropTypes.func,\n\n  /**\n   * Callback fired when the input value changes.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   * @param {string} value The new value of the text input.\n   * @param {string} reason Can be: `\"input\"` (user input), `\"reset\"` (programmatic change), `\"clear\"`.\n   */\n  onInputChange: PropTypes.func,\n\n  /**\n   * Callback fired when the popup requests to be opened.\n   * Use in controlled mode (see open).\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   */\n  onOpen: PropTypes.func,\n\n  /**\n   * If `true`, the component is shown.\n   */\n  open: PropTypes.bool,\n\n  /**\n   * If `true`, the popup will open on input focus.\n   * @default false\n   */\n  openOnFocus: PropTypes.bool,\n\n  /**\n   * Override the default text for the *open popup* icon button.\n   *\n   * For localization purposes, you can use the provided [translations](/material-ui/guides/localization/).\n   * @default 'Open'\n   */\n  openText: PropTypes.string,\n\n  /**\n   * Array of options.\n   */\n  options: PropTypes.array.isRequired,\n\n  /**\n   * The component used to render the body of the popup.\n   * @default Paper\n   */\n  PaperComponent: PropTypes.elementType,\n\n  /**\n   * The component used to position the popup.\n   * @default Popper\n   */\n  PopperComponent: PropTypes.elementType,\n\n  /**\n   * The icon to display in place of the default popup icon.\n   * @default <ArrowDropDownIcon />\n   */\n  popupIcon: PropTypes.node,\n\n  /**\n   * If `true`, the component becomes readonly. It is also supported for multiple tags where the tag cannot be deleted.\n   * @default false\n   */\n  readOnly: PropTypes.bool,\n\n  /**\n   * Render the group.\n   *\n   * @param {AutocompleteRenderGroupParams} params The group to render.\n   * @returns {ReactNode}\n   */\n  renderGroup: PropTypes.func,\n\n  /**\n   * Render the input.\n   *\n   * @param {object} params\n   * @returns {ReactNode}\n   */\n  renderInput: PropTypes.func.isRequired,\n\n  /**\n   * Render the option, use `getOptionLabel` by default.\n   *\n   * @param {object} props The props to apply on the li element.\n   * @param {T} option The option to render.\n   * @param {object} state The state of the component.\n   * @returns {ReactNode}\n   */\n  renderOption: PropTypes.func,\n\n  /**\n   * Render the selected value.\n   *\n   * @param {T[]} value The `value` provided to the component.\n   * @param {function} getTagProps A tag props getter.\n   * @param {object} ownerState The state of the Autocomplete component.\n   * @returns {ReactNode}\n   */\n  renderTags: PropTypes.func,\n\n  /**\n   * If `true`, the input's text is selected on focus.\n   * It helps the user clear the selected value.\n   * @default !props.freeSolo\n   */\n  selectOnFocus: PropTypes.bool,\n\n  /**\n   * The size of the component.\n   * @default 'medium'\n   */\n  size: PropTypes\n  /* @typescript-to-proptypes-ignore */\n  .oneOfType([PropTypes.oneOf(['small', 'medium']), PropTypes.string]),\n\n  /**\n   * The system prop that allows defining system overrides as well as additional CSS styles.\n   */\n  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n\n  /**\n   * The value of the autocomplete.\n   *\n   * The value must have reference equality with the option in order to be selected.\n   * You can customize the equality behavior with the `isOptionEqualToValue` prop.\n   */\n  value: chainPropTypes(PropTypes.any, props => {\n    if (props.multiple && props.value !== undefined && !Array.isArray(props.value)) {\n      return new Error(['MUI: The Autocomplete expects the `value` prop to be an array when `multiple={true}` or undefined.', `However, ${props.value} was provided.`].join('\\n'));\n    }\n\n    return null;\n  })\n} : void 0;\nexport default Autocomplete;"],"mappings":"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"},"metadata":{},"sourceType":"module"}